#ifndef BITWISE_H
#define BITWISE_H

#include <math.h>

namespace BitOp {
    /*
	 *	SpliceByte returns only part of the complete byte, after pushing
	 *	its offset back towards the first bit. This is useful for breaking
	 *	a byte into several bytes, when more than one variable was joined
	 *	into one byte.
	 *	SpliceByte receives 3 arguments:
	 *	  const unsigned char Byte:
	 *	      The byte to operate on.
	 *	  int offset
	 *	      Where is the segment we want to splice begins at.
	 *	  int count
	 *	      How many bits starting at offset do we want to take out.
	 *	SpliceByte returns the new byte spliced according to the above
	 *	arguments.
     */
	unsigned char SpliceByte(const unsigned char Byte, int offset, int count);
}

#endif

